1. После успешной установки не удается получить доступ к веб-интерфейсу
2. Установка прерывается ошибкой вида "-ash: ./init: not found"
3. Не работает один или несколько сетевых сервисов
4. Изменение настроек сервисов
Проверьте настройки фаервола, скорее всего закрыт порт веб-интерфейса. Открыть порт можно попробовать с помощью данного скрипта:
!/bin/bash
if hash firewall-cmd 2>/dev/null; then
firewall-cmd --permanent --zone=public --add-port=$1/tcp
firewall-cmd --permanent --zone=public --add-port=$1/udp
echo "Reload firewall..."
firewall-cmd --reload
else
iptables -I INPUT -p tcp -m tcp --dport $1 -j ACCEPT
iptables -I INPUT -p tcp -m udp --dport $1 -j ACCEPT
fi
Сохраните скрипт, например как openport.sh, затем назначьте разрешение на выполнение и выполните, указав первым параметром номер порта:
chmod +x openport.sh
./openport.sh 80
Вероятнее всего, на устройстве вместо Bash используется другая командная оболочка.
Перейдите в каталог установки и замените в скриптах init, register, start, stop, restart и status
первую строку #!/bin/bash
на #!/bin/sh
(или на #!/bin/dash
, #!/bin/ash
и тд.).
Замену можно сделать и в дистрибутиве, скачав и распаковав архив pult_xxxxxx_xxxxxx_xxx.tar.gz.
a) Выполните команду ./status
чтобы убедится что сервисы Пульт.Онлайн запущены и работают
cd /pult_server
./status
Результатом выполнения данной команды должен быть список сервисов и их статусов:
STATUS OF PULT.ONLINE SERVICES
RESULT: {
builder: running
core: running
db: running
drv_alarm: running
...
drv_virt: running
server: running (25 errors)
trends: running
}
Здесь running
означает, что сервис запущен. Если статус сервиса содержит errors
- выполните команду ./status <имя_сервиса>
чтобы определить причину сбоя:
./status server
Результат команды:
STATUS OF PULT.ONLINE SERVICES
RESULT: {
name: server
path: /pult/services/server/pult_server
pid: 0
cpu_usage: 0
cpu_usage_avg: 0.147
mem_usage: 3464
status: running
errors: 25
last_error_time: Nov 15 00:20:47.415
last_error_timestamp: 1731630047415
last_error_code: 3101
last_error_message: ERROR bind port 80: Address already in use
}
В поле last_error_message
будет указана причина сбоя. В данном примере порт 80 уже занят другим приложением. В таком случае определите приложение, занимающее порт, отключите его или перенастройте на другой порт. Получить список приложений и занятых ими портов можно командой netstat:
netstat -tulpn
б) Проверьте, открыт ли порт в фаерволе (см п.1)
в) Проверьте в настройках сервиса следующие параметры:
listen_tcp_port=1
tcp_port=502
allowed_ip=*
Убедитесь, что listen_tcp=1
, tcp_port
указывает на верный номер порта, а IP клиента, подключающегося к сервису, соответствует маске адресов, определенных в параметре allowed_ip
(* - разрешено подключение с любых IP).
Настройки сервисов и статус их работы можно посмотреть в интерфейсе сервера в разделе Система.
Для просмотра или изменения настроек сервисов через консоль откройте конфигурационный файл соответствующего сервиса, например, редактором Nano:
cd /pult_server
nano services/server/config.cfg
После редактирования настроект нажмите Ctrl+O
для сохранения.
Если в ОС не установлен Nano, попробуйте открыть конфиг редактором Vi:
cd /pult_server
vi services/server/config.cfg
Для перехода в режим редактирования нажмите i
. Внесите требуемые изменения. Для сохранения и выхода вернитесь в режим просмотра клавишей Esc
затем введите :wq
.
Изменение и сохранение конфигурационного файла приведет к автоматическому перезапуску соответствующего сервиса и приенению новых настроек.